Determining a profile for a recommendation engine based on group interaction dynamics

ABSTRACT

A technique includes using a processor-based machine to determine a dynamic interaction characteristic of a group of users. The technique further includes, based at least in part on the determined dynamic interaction characteristic, determining a profile of the group for a recommendation engine.

BACKGROUND

A content provider, such as a provider of streaming movie rentals, mayuse a recommendation engine to generate suggested recommendations offuture content to be viewed by its subscribers. More specifically, whengenerating a recommendation for a given subscriber, the recommendationengine may take into account that the subscriber has indicated apreference for viewing certain movie genres; a history of the subscriberviewing certain movie genres; favorite movies, shows and genres of thesubscriber; and feedback from the subscriber regarding recommendationspreviously provided by the recommendation engine.

BRIEF DESCRIPTION OF THE DRAWINGS

FIGS. 1 and 4 are schematic diagrams of systems to generate groupprofiles for a recommendation engine according to exemplaryimplementations.

FIGS. 2 and 3 are flow diagrams depicting techniques to determine groupprofiles for a recommendation engine according to exemplaryimplementations.

DETAILED DESCRIPTION

Systems and techniques are disclosed herein for purposes of determiningthe profile of a group of individual users so that the determinedprofile may be used by a recommendation engine to determine a suggestedrecommendation for content (movie, television, or audio content, as afew examples) that may be accessed (viewed, for example) by the group.The users may be, as examples, family members, business colleagues,friends, and so forth who are gathered together (in the same room orpossibly at different locations) for purposes of simultaneouslyaccessing content (or at least having the ability to simultaneouslyaccess the content) provided by a content provider. The content providermay be (as examples) a movie rental provider, a streaming audio service,a television content provider, an Internet-based content provider, andso forth. Moreover, at least one of the individual users of the groupmay be an account holder with the content provider. The account may be asubscription-based account or a non-subscription-based account,depending on the particular implementation.

The recommendations may be part of the services that are provided by thecontent provider. In contrast to generating a recommendation solelybased on an individual user profile (the account holders profile, forexample), due to the techniques and systems that are disclosed herein,the recommendation engine takes into account the dynamics of the entiregroup.

In this manner, a recommendation for a group that is provided by arecommendation engine based solely on an individual user profile may berelatively inaccurate. Moreover, a recommendation for a group generatedbased on a merger of individual user profiles for the users of a groupmay be relatively inaccurate, if group dynamics are not taken intoaccount. Thus, profiles of Person A and Person B may not necessarily bemeshed together to form an accurate profile for a group that includesPersons A and B without considering how Person A interacts with PersonB.

Referring to FIG. 1, to address this concern, FIG. 1 depicts anexemplary system 10, which determines a group profile, called a “grouppersona 28” herein, for a recommendation engine 50. The group persona 28indicates a profile for a given group of individual users 60 and isbased at least in part on observed/determined group dynamics of theusers 60.

More specifically, in accordance with implementations that are disclosedherein, a dynamics identifier 20 of the system 10 determines the grouppersona 28 by considering individual profiles of the users 60 and thebehaviors of the different individual users 60 of the group, as theusers 60 interact with each other and possibly form differentsub-groups. This interaction, in turn, is referred to as the “groupdynamics” herein and may take into account one or more of the following.One of the individual users 60 may be more dominant relative to the restof the group and thus, may have “veto power.” For example, such ascenario may be the case in which a parent and a child are watching amovie together; and the parent for this example, is the more dominantuser of the group.

As another example, one of the users 60 may be relatively disengagedfrom the rest of the group, such as the case, for example, when one ofthe users 60 browses the Internet or reads a newspaper, while theremaining users 60 watch television. As another example, one or more ofthe users 60 may be particularly interested in live broadcast televisioncontent, while the remaining user(s) 60 may be relatively indifferent towhether a broadcast is live or not. One or more of these dynamic groupinteraction characteristics, as well as other/different dynamic groupinteraction characteristics may be considered by the dynamics identifier20 for purposes of generating the group persona 28.

The dynamics identifier 20 may consider factors other than the groupdynamics in the generation of the group persona 28, in accordance withsome implementations. For example, in accordance with someimplementations, the dynamics identifier 20 may consider user-providedfeedback 36 of past recommendations provided by the recommendationengine 50 as well as content ratings 40 that are provided by theindividual users 60. A content rating 40 may be, as an example, a ratingof a movie by a user 60 and may be compiled with other ratings 40 by theuser to generate a profile for the user 60, indicating the user'spreferences for certain actors, actresses, film eras, movie genres,directors and so forth.

It is noted that depending on the particular implementation, therecommendation engine 50 may or may not be part of the system 10. Therecommendation engine 50 may or not be associated with the contentprovider. Moreover, the recommendation engine 50 may be locally orremotely disposed with respect to the system 10.

The feedback 36 and/or the ratings 40 may be entered via components ofthe system 10, in accordance with some implementations. However, inaccordance with further implementations, the feedback 36 and/or theratings 40 may be entered by components that are not part of the system10. For example, in accordance with some implementations, the feedback36 and/or ratings 40 may be entered via a user interface that isprovided by an Internet server (a web site affiliated with the contentprovider, for example). Thus, many variations are contemplated, whichare within the scope of the appended claims.

Referring to FIG. 2 in conjunction with FIG. 1, in summary, inaccordance with exemplary implementations, a technique 100 may be usedto determine a profile of a group of users for a recommendation engine50 so that the recommendation engine 50 may provide a recommendation offuture suggested content to be accessed by the group. The technique 100includes determining (block 104) at least one dynamic interactioncharacteristic of a group of users and based at least in part on thedetermined characteristic(s), determine a profile of the group, pursuantto block 108.

Referring to FIG. 1, among its other features, in accordance with someimplementations, the system 10 includes a repository 32, which storesdata indicative of previously generated individual and group personas28, data indicative of the feedback 36 as well as data indicative of thecontent ratings 40. Although the depository 32 is depicted in FIG. 1 asbeing part of the system 10, the repository 32 may be external orremotely located with respect to other components of the system 10, inaccordance with further implementations.

The system 10 also includes one or multiple user detectors 24, inaccordance with some implementations. In general, the user detector(s)24 may be used for one or more of the following purposes: detection ofthe presence of one or more of the users 60; recognition of the identityof one or more of the users 60; detection of the group interaction andlevel of engagement of one or more of the users 60; and so forth.

As a non-limiting example, the user detector(s) 24 may include a camerathat acquires a user image and an image processor, which performs suchfunctions as recognizing the user and detecting the engagement of theuser in the content-related focus activity (watching a movie, forexample) of the group. For example, using a facial recognitiontechnique, the user detector 24 may identify a particular user 60; andfor this purpose, the user detector 24 may compare facialcharacteristics of the user 60 to find characteristics stored in alibrary. Through image recognition, for example, a given user detector24 may further determine that a particular user is not watching atelevision, for example, but instead, is engaged in talking with anotheruser 60, concentrating on subject matter outside of the room, reading abook, browsing the Internet, working a portable computer, and so forth.

In further implementations, a particular user detector 24 may be formedat least in part by an application on a smartphone, which communicateswith the dynamics identifier 20 data regarding interaction of the user60 with the smartphone. In this regard, if the user 60 is consuming acertain amount of time engaging the smartphone, then the dynamicsidentifier 20 may consider the user 60 as being only slightly engagedwith the content-recited focus activity of the group. As anotherexample, a given user detector 24 may be formed at least in part bysoftware executing on a portable computer or by an application on asmartphone, which allows a given user 60 to log in and log out toindicate whether the user 60 is engaged. Such software may also executeon a content viewing device, such as a television, in accordance withfurther implementations.

The dynamics identifier 20 develops individual user profiles based onsuch information as input from the user detector(s) 24 and input fromthe repository 32 regarding such factors as the feedback 36, contentratings 40, previously-determined user profiles, current user behaviorand so forth. In accordance with exemplary implementations, the dynamicsidentifier 20 uses the time when a user watches content, such as video,alone in order to determine the user's individual profilecharacteristics. This could also include the video watched online andthrough streaming and traditional TV viewing. The dynamics identifier 20combines the individual user profiles for the users of a given groupbased at least in part on the observed way in which the users interactwith each other. As a more specific example, in accordance with someimplementations, the dynamics identifier 20 may determine individualuser profiles and then select one of a group of algorithms, whichcontrol how the dynamics identifier 20 combines the individual userprofiles to generate the group persona 28.

The following examples assume individual users called “X” and “Y”herein. The dynamics identifier 20 uses such information as the contentthat X user watches alone, content preferences indicated by the X user,and observed behavior of the X user to generate a set of metadata andassociated weights, which collectively form the profile (called“Prof_(X)” herein) of the X user. The Prof_(X) profile may be describedas a set of N tuples of “<keyword,weight>,” as set forth below:Prof_(X)={<K_(1X),W_(1X)>,<K_(2X),W_(2X)>,<K_(3X),W_(3X)>, . . . ,<K_(NX),W_(NX)>},   Eq. 1where “K_(1X) . . . K_(NX)” represent the N metadata, or keywords of theX user; and “W_(1X) . . . W_(NX)” represents the corresponding N weightsthat are respectively associated with the N keywords. As examples, whenapplied to movie content, the keywords may be one or more of thefollowing: specific actors, actresses, directors, genres, moviecopyright year ranges and so forth. Moreover, the keywords may indicatepreferences for the type of content, such as pre-recorded content,television live broadcast, situation comedies, news casts, streamingcontent, and so forth.

Each weight which may be a real-number in the range of 0 to 1 inaccordance with some implementations to indicate the relative importanceof the keyword in the user's profile. For example, a weight of “0.1” fora comedy genre keyword may indicate that the user occasionally watchescomedies; and a weight of “0.9” for a drama genre may indicate that theuser more often watches movies associated with drama content. Thedynamics identifier 20 may assign the weights based on a number ofdifferent factors, such as observed user behavior, user-enteredpreferences, and so forth.

For the following example, the Y user may have the following profile“Prof_(Y)” of M tuples:Prof_(Y)={<K_(1Y),W_(1Y)>,<K_(2Y),W_(2Y)>,<K_(3Y),W_(3Y)>, . . . ,<K_(MY),W_(MY)>}  Eq. 2It is noted that the user profiles may have the same or different numberof tuples (i.e., N may be the same, greater than or less than M, forthis example), depending on the particular implementation.

Based on the observed dynamic interaction characteristics of the group,which for this example is assumed to include users X and Y, the dynamicsidentifier 20 selects one of a group of algorithms for purposes ofcombining the Prof_(X) and Prof_(Y) profiles. The algorithms may includewhat is labeled a “common algorithm” herein, which creates a grouppersona 28 (called “Prof₁,” herein), which is based on the intersectionof Prof_(X) and Prof_(Y). The keywords of the Prof₁ group persona 28 arethe keywords that are shared in common by the Prof_(X) and Prof_(Y)profiles; and for every keyword, the associated weight is the minimum ofthe weights of the Prof_(X)and Prof_(Y) profiles, as described below:Keywords of Prof₁=[K_(1X), . . . , K_(NX)]∩[K_(1Y), . . . , K_(NY)], and  Eq. 3Weights of Prof₁=min(W_(X), W_(Y)),   Eq. 4where “∩” represents the intersection set operator.

In general, in accordance with example implementations, the dynamicsidentifier 20 may select the common algorithm based on the grouppreferring recommendations using such an algorithm. In accordance withexemplary implementations, the dynamics identifier 20 uses all of thesealgorithms for combining profiles in order to generate recommendationsand then watches the behavior of the user and which recommendations thatthe user favored. As example implementations, detecting suchrecommendations may be performed by passively by watching what wasselected to be viewed by the users, or through active querying of theusers to solicit their ratings of the recommendations.

As an example of another algorithm for combining the user profiles, thedynamics identifier 20 may select what is called a “union algorithm”herein to create a new group persona 28 (called “Prof₂” herein), whichis based on the union of the Prof_(X) and Prof_(Y) profiles. Because ofthe union, the keywords in the Prof₂ group persona 28 are all of thekeywords contained in both the Prof_(X) and Prof_(Y) profiles; and theweights of the Prof₂ group persona 28 are the summation of the weightsin the Prof_(X) and Prof_(Y) profiles, as described below:Keywords of Prof₂=[K_(1X), . . . , K_(NX)]∪[K_(1Y), . . . , K_(NY)], and  Eq. 5Weights of Prof₂ =W _(X) +W _(Y),   Eq. 6where “∪” represents the union set operator. For the union algorithm, ifa given keyword does not exist in one of the Prof_(X) and Prof_(Y)profiles, then the associated weight of that profile is assumed to bezero, in accordance with exemplary implementations.

The dynamics identifier 20 may further select an algorithm, which ismore heavily weighted to the preferences of a particular user of thegroup. This selection occurs when the dynamics identifier 20 determines,for example, that the more heavily weighted user is the dominantdecision maker of the group. As examples, the other individual(s) of thegroup may be relatively disengaged from the focus activity of the group,the heavily weighted decision maker may be a user who watches more TVand is more vested in what will be displayed, and so forth. Othercounter-intuitive examples could include heavily weighing towards theprofile of a child despite the presence of a parent since what a childwatches typically is appropriate for an adult, but not vice versa. As amore specific example, if the dynamics identifier 20 identifies the Xuser as being a dominant decision maker of the group, then the dynamicsidentifier 20 may generate a group persona 28 (called “Prof₃” herein),which is based on the weighted combination of the Prof_(X) andProf_(Y)profiles, as set forth below:Keywords of Prof₃=[K_(1X), . . . , K_(NX)]∪[K_(1Y), . . . , K_(NY)], and  Eq. 7Weights of Prof₃ =αW _(X) +βW _(Y),   Eq. 8where the “α” is a real number in the range of 0 to 1, which is used toweight the weights of the Prof_(X) profile; and “β” is a real number inthe range of 0 to 1, which is used to weight the weights of the Prof_(Y)profile, such that α>β and α+β=1. For example, the α weight may be 0.7,and the β weight may be 0.3, thereby assigning relatively more weightsto the keywords of the Prof_(X) profile.

Continuing the example from above, if the dynamics identifier 20alternatively determines that the Y user (instead of the X user) is therelatively dominant decision maker of the group, then the dynamicsidentifier 20 may select an algorithm, which prefers the Prof_(Y)profile. In this regard, the dynamics identifier 20, in using thisalgorithm, assumes that the keywords of the Prof_(Y) profile shouldreceive relatively more weight. As a result, the dynamics identifier 20determines a group persona 28 (called “Prof₄”) that is based on aweighted combination of the Prof_(X) and Prof_(Y) profiles, whichprefers the Prof_(Y) profile, as set forth below:Keywords of Prof₄=[K_(1X), . . . , K_(NX)]∪[K_(1Y), . . . , K_(NY)], and  Eq. 9Weights of Prof₄ =αW _(X) +βW _(Y).   Eq. 10For this example, the α weight may be 0.3 and the β weight may be 0.7,thereby assigning relatively more weights to the keywords of theProf_(Y) profile. Note that for the same 2 users X and Y, the dynamicsidentifier could select one algorithm in certain cases and anotheralgorithm for other cases, situations and context. The algorithm doesnot have to be the same at all times for the same users.

Thus, referring to FIG. 3, a technique 150 in accordance with exemplaryimplementations may be used to generate a group profile, or grouppersona for a group of users. The technique 150 includes receiving(block 154) first data indicating profiles of individual users of agroup and receiving (block 158) second data indicating at least onedynamic interaction characteristic of the group. The technique 150 mayfurther include receiving (block 160) third data indicative of feedbackand/or ratings. Based at least in part on the second and third data, thetechnique 150 includes selecting a manner in which the individual userprofiles are combined, pursuant to block 162. Based at least in part onthis selected manner, the technique 150 includes combining (block 166)individual user profiles to generate a group persona.

Referring back to FIG. 1, in accordance with some implementations, dueto the creation of the group persona 28, the persona 28 may be used withan existing recommendation engine 50 that has traditionally providedrecommendations based solely on individual user profiles, as the grouppersona 28 may be perceived from the perspective of the engine 50, asbeing the persona of an individual user. Moreover, due to the providingof the group persona 28, users are afforded a significant degree ofprivacy, allowing their data to be captured but abstracted whenpotentially sent to third party services (such as the third partyservice using the recommendation engine 50, for example). In thismanner, the recommendation engine 50 may be unaware, for example, thatthe monitored group is a group of two children and a parent, where thechildren are watching television and the parent is reading thenewspaper. Thus, the group persona 28 allows the composition of thegroup as well as the individual preferences to remain anonymous whilestill allowing the recommendation engine 50 to provide a satisfactoryrecommendation based on the users in the room and their groupinteraction dynamics.

In general, the system 10 may take on one of numerous forms, dependingon the particular implementation. As non-limiting examples, the system10 may be a portable computer; an interactive gaming system; asmartphone; a set-top box; a television; a combination of one or more ofthese devices; and so forth.

Referring to FIG. 4, as a non-limiting example, in accordance withexemplary implementations, the system 10 may include hardware 200, suchas one or more processors 210 (central processing units (CPUs),processing cores, microprocessors, microcontrollers, and so forth); oneor more sensors 212 (cameras; microphones; processor-based reportingdevices, such as portable computers, web servers, or smartphonesexecuting user logging or user recognition software, for example; and soforth), a memory 214 (storing program instructions, for example); one ormore disk drives 216 (storing data for the repository 32 of FIG. 1, forexample); a network interface 218; and so forth.

In general, the memory 214 is a non-transitory memory that is formedfrom one or more of the following memory devices: semiconductor memorydevices; phase change memory devices; optical storage devices; magneticstorage devices; and so forth. The memory 214 may store programinstructions that when executed by one or more of the processor(s) 210cause the processor(s) 210 to perform at least some of one or more ofthe techniques that are disclosed herein, such as the techniques 100 and150, for example. In this manner, these executing instructions may formone or more of the following: the dynamics identifier 20; systemsoftware; and applications to recognize/identify the users 60.

More specifically, the processor(s) 210 may execute one or more machineexecutable instructions 250 (i.e., “software”), which are stored in thememory 214 or other non-transitory memory, for purposes of performingone or more functions of the system 10. In this manner, the machineexecutable instructions 250, when executed by the processor(s) 210, maycause the processor(s) 210 to form the dynamics identifier 20; form auser logger 259 to track which user is currently logged in; form a useractivity monitor 257 (to monitor whether a given user is using anelectronics device, browsing the Internet, and so forth); form a facialimage recognizer 258; form one or more device drivers 256; form anoperating system 254; and so forth.

In general, in accordance with some implementations, the system 10 is aphysical machine that is made up of actual software and hardware. It isnoted that the software components of the system 10 may be implementedin one or more virtual machines, in accordance with someimplementations. Moreover, although the system 10 is depicted in thefigures as being contained in a box, it is understood that the system 10may be a distributed system, which is distributed among multiple nodes.Thus, many implementations other than those that are specificallydisclosed herein are contemplated and are within the scope of theappended claims.

The following examples pertain to further implementations.

In an example implementation, a technique includes using aprocessor-based machine to determine at least one dynamic interactioncharacteristic of a group of users; and based at least in part on thedetermined dynamic interaction characteristic(s), determine a profile ofthe group for a recommendation engine.

In some implementations, the technique includes determining a profile ofat least one of the users; and further basing the determination of theprofile of the group based at least in part on the determined userprofile.

In some implementations, using the processor-based machine to determinethe dynamic interaction characteristic(s) includes determining anengagement of at least one of the users with an activity being performedby the group.

In some implementations, using the processor-based machine to determinethe dynamic interaction characteristic(s) includes determining an age ofat least one of the users.

In some implementations, using the processor-based machine to determinethe dynamic interaction characteristic(s) includes processing input dataprovided by at least one of the users.

In some implementations, the technique includes determining profiles ofthe users, and the determination of the profile of the group includesselectively combining the determined user profiles based at least inpart on the determined dynamic interaction characteristic(s).

In some implementations, combining the determined user profiles includescombining the user profiles based at least in part on a determineddegree of similarity among the determined profiles.

In some implementations, combining the determined user profiles includescombining the user profiles based at least in part on determinedengagements of the users in an activity being performed by the group.

In some implementations, each of the profiles includes keywordsassociated with preferences of the associated user, and combining theprofiles includes performing an intersection of the keywords.

In some implementations, each of the profiles includes keywordsassociated with preferences of the associated user, and combining theprofiles includes performing a union of the keywords.

In some implementations, at least one machine readable medium includes aplurality of instructions that in response to being executed on acomputing device, cause the computing device to carry out a methodaccording to any of the above-described techniques.

In some implementations, an apparatus includes a processor that isadapted to perform any of the above-described techniques.

In some implementations, an apparatus includes at least one sensor and aprocessor-based dynamics identifier. The sensor(s) indicate an activityof at least one user of a plurality of users of a group; and thedynamics identifier determines at least one dynamic interactioncharacteristic of the group and determines a profile of the group for arecommendation engine based at least in part on the determinedcharacteristic(s).

In some implementations, the sensor(s) include one or more of a camera,an application and an audio input device.

In some implementations, the dynamics identifier is adapted to determinethe profile based at least in part on at least one rating provided by atleast one of the users.

In some implementations, the dynamics identifier is adapted to determinethe dynamic interaction characteristic(s) based at least in part onfeedback of a recommendation generated in response to a previous profileof the group determined by the dynamics identifier.

While a limited number of examples have been disclosed herein, thoseskilled in the art, having the benefit of this disclosure, willappreciate numerous modifications and variations therefrom. It isintended that the appended claims cover all such modifications andvariations.

What is claimed is:
 1. A method comprising: using a processor-basedmachine to determine at least one dynamic interaction characteristic ofa group of users that are interacting with a machine, the at least onedynamic interaction characteristic indicating interaction among at leastsome of the group of users; and based at least in part on the at leastone determined dynamic interaction characteristic, determine a profileof the group for a recommendation engine of a content provider.
 2. Themethod of claim 1, further comprising: determining a profile of at leastone of the users; and further basing the determination of the profile ofthe group based at least in part on the determined profile.
 3. Themethod of claim 1, wherein using the processor-based machine todetermine at least one dynamic interaction characteristic comprisesdetermining an engagement of at least one of the users with an activitybeing performed by the group.
 4. The method of claim 1, wherein usingthe processor-based machine to determine the at least one dynamicinteraction characteristic comprises determining an age of at least oneof the users.
 5. The method of claim 1, wherein using theprocessor-based machine to determine the at least one dynamicinteraction characteristic comprises processing input data provided byat least one of the users.
 6. The method of claim 1, further comprisingdetermining profiles of the users, wherein determining the profile ofthe group further comprises: based at least in part on the at least onedetermined dynamic interaction characteristic, selectively combining thedetermined user profiles.
 7. The method of claim 6, wherein combiningthe determined user profiles comprises combining the user profiles basedat least in part on a determined degree of similarity among thedetermined user profiles.
 8. The method of claim 6, wherein combiningthe determined user profiles comprises combining the user profiles basedat least in part on determined engagements of the users in an activitybeing performed by the group.
 9. The method of claim 6, wherein each ofthe user profiles comprises keywords associated with preferences of theassociated individual, and combining the profiles comprises performingan intersection of the keywords.
 10. The method of claim 6, wherein eachof the user profiles comprises keywords associated with preferences ofthe associated individual, and combining the profiles comprisesperforming a union of the keywords.
 11. At least one non-transitorymachine readable medium comprising a plurality of instruction that inresponse to being executed on a computing device, cause the computingdevise to: determine at least one dynamic interaction characteristic ofa group of users that are interacting with a machine, the at least onedynamic interaction characteristic indicating interaction among at leastsome users of the group of users; and based at least in part on the atleast one determined dynamic interaction characteristic, determine aprofile of the group for a recommendation engine of a content provider.12. An apparatus comprising: a processor adapted to: determine at leastone dynamic interaction characteristic of a group of users that areinteracting with a machine, the at least one dynamic interactioncharacteristic indicating interaction among at least some users of thegroup of users; and based at least in part on the at least onedetermined dynamic interaction characteristic, determine a profile ofthe group for a recommendation engine of a content provider.
 13. Anapparatus comprising: at least one sensor to indicate the presence andan activity of at least one user of a plurality of users of a groupinteracting with a machine; and a processor-based dynamics identifier todetermine at least one dynamic interaction characteristic of the groupand determine a profile of the group for a recommendation engine of acontent provider based at least in part on the at least one determinedcharacteristic, the at least one dynamic interaction characteristicindicating interaction among at least some users of the group of users.14. The apparatus of claim 13, wherein the at least one sensor comprisesat least one or more of the following: a camera; an application; and anaudio input device.
 15. The apparatus of claim 13, wherein the dynamicsidentifier is adapted to determine the profile based at least in part onat least one rating provided by at least one of the users.
 16. Theapparatus of claim 13, wherein the dynamics identifier is adapted todetermine the at least one dynamic interaction characteristic based atleast in part on at least one rating of a recommendation generated inresponse to a previous profile of the group determined by the dynamicsidentifier.
 17. The apparatus of claim 13, further comprisingdetermining profiles of the users, wherein determining the profile ofthe group further comprises: based at least in part on the at least onedetermined dynamic interaction characteristic, selectively combining thedetermined user profiles.
 18. The apparatus of claim 17, whereincombining the determined user profiles comprises combining the userprofiles based at least in part on a determined degree of similarityamong the determined user profiles.
 19. The apparatus of claim 17,wherein combining the determined user profiles comprises combining thedetermined user profiles based at least in part on determinedengagements of the users in an activity being performed by the group.20. The apparatus of claim 17, wherein each of the user profilescomprises keywords associated with preferences of the associated user,and combining the user profiles comprises performing an intersection ofthe keywords.
 21. The at least one non-transitory machine readablemedium of claim 11, comprising a plurality of instructions that inresponse to being executed on the computing device cause the computingdevice to suggest recommendations associated with the machine based atleast in part on the determined profile of the group.
 22. The at leastone non-transitory machine readable medium of claim 11, comprising aplurality of instructions that in response to being executed on thecomputing device cause the computing device to: determine a profile ofat least one of the users; and further basing the determination of theprofile of the group based at least in part on the determined profile.23. The at least one non-transitory machine readable medium of claim 11,comprising a plurality of instructions that in response to beingexecuted on the computing device cause the computing device to determinean engagement of at least one of the users with an activity beingperformed by the group.
 24. The at least one non-transitory machinereadable medium of claim 11, comprising a plurality of instructions thatin response to being executed on the computing device cause thecomputing device to determine an age of at least one of the users. 25.The at least one non-transitory machine readable medium of claim 11,comprising a plurality of instructions that in response to beingexecuted on the computing device cause the computing device to processinput data provided by at least one of the users.
 26. The at least onenon-transitory machine readable medium of claim 11, comprising aplurality of instructions that in response to being executed on thecomputing device cause the computing device to, based at least in parton the one determined dynamic interaction characteristic, selectivelycombine the determined user profiles.
 27. The at least onenon-transitory machine readable medium of claim 26, comprising aplurality of instructions that in response to being executed on thecomputing device cause the computing device to combine the user profilesbased at least in part on a determined degree of similarity among thedetermined user profiles.
 28. The at least one non-transitory machinereadable of claim 26, comprising a plurality of instructions that inresponse to being executed on the computing device cause the computingdevice to combine the user profiles based at least in part on determinedengagements of the users in an activity being performed by the group.29. The at least one non-transitory machine readable medium of claim 26,wherein each of the user profiles comprises keywords associated withpreferences of the associated individual, and wherein the at least onenon-transitory readable medium comprises a plurality of instructionsthat in response to being executed on the computing device cause thecomputing device to combine the profiles by performing an intersectionof the keywords.
 30. The at least one non-transitory machine readablemedium of claim 26, wherein each of the users profiles compriseskeywords associated with preferences of the associated individual, andwherein the at least one non-transitory machine readable mediumcomprises a plurality of instructions that in response to being executedon the computing device cause the computing device to combine theprofiles by performing a union of the keywords.
 31. The apparatus ofclaim 12, wherein the processor: determines a profile of at least one ofthe users; and further bases the determination of the profile of thegroup based at least in part on the determined profile.
 32. Theapparatus of claim 12, wherein the processor determines an engagement ofat least one of the users with an activity being performed by the group.33. The apparatus of claim 12, wherein the processor determines the atleast one dynamic interaction characteristic by determining an age of atleast one of the users.
 34. The apparatus of claim 12, wherein theprocessor determines the at least one dynamic interaction characteristicby processing input data provided by at least one of the users.
 35. Theapparatus of claim 12, wherein the processor selectively combines thedetermined user profiles based in part on the at least one determineddynamic interaction characteristic.
 36. The apparatus of claim 35,wherein the processor combine the determined user profiles by combiningthe user profiles based in part on a determined degree of similarityamong the determined user profiles or combining the user profiles basedat least in part on determined engagements of the users in an activitybeing performed by the group.
 37. The apparatus of claim 35, whereineach of the user profiles comprises keywords associated with preferencesof the associated individual, and the processor combines the profiles byperforming an intersection of the keywords or performing a union of thekeywords.